package br.com.javagyn.OLD;

import javax.enterprise.context.RequestScoped;
import javax.inject.Inject;
import javax.inject.Named;

import br.com.javagyn.controller.AppController;
import br.com.javagyn.exception.NegocioException;

@Named
@RequestScoped
public class PessoaController extends AppController {

	private static final long serialVersionUID = 1L;

	@Inject
	private PessoaService pessoaService;

	@Inject
	private PessoaForm pessoaForm;

	@Override
	public void iniciarDados() {
	}

	public void prepararCadastro() {
		if (this.getPessoaForm().getEntidade().getId() == null) {
			this.getPessoaForm().setEntidade(new Pessoa());
		}
	}

	public void salvar() {
		try {
			
			this.getPessoaService().salvar(this.getPessoaForm().getEntidade());
			this.getPessoaForm().setEntidade(new Pessoa());
			messageInfo("Usuário salvo com sucesso!");

		} catch (NegocioException e) {

			messageError(e.getMessage());
		}
	}

	public void excluir() {

		try {
			this.getPessoaService().excluir(this.getPessoaForm().getConsulta());
			
			messageInfo("Usuário excluido com sucesso!");

		} catch (NegocioException e) {

			messageError(e.getMessage());
		}
	}

	public PessoaForm getPessoaForm() {
		return pessoaForm;
	}

	public PessoaService getPessoaService() {
		return pessoaService;
	}

}
